﻿package medianOfTwoSortedArrays;
/*
常规解法
*/
class Solution {
    public double findMedianSortedArrays(int[] nums1, int[] nums2) {
        int length = nums1.length + nums2.length;
        int tempArray[] = new int[length];
        int m = 0, n = 0;
        if (nums1.length != 0 && nums2.length != 0) {
            for (int i = 0; i < nums1.length + nums2.length; i++) {
                if (nums1[m] >= nums2[n]) {
                    tempArray[i] = nums2[n];
                    n++;
                } else {
                    tempArray[i] = nums1[m];
                    m++;
                }
                if (m == nums1.length || n == nums2.length) break;
            }
        }
        if (m == nums1.length) {
            for (int i = n; i < nums2.length; i++, n++) {
                tempArray[m + i] = nums2[i];
            }
        }
        if (n == nums2.length) {
            for (int i = m; i < nums1.length; i++, m++) {
                tempArray[n + i] = nums1[i];
            }
        }
        if ((m + n) % 2 == 1) {
            return tempArray[(m + n) / 2] / 1.0;
        } else return (tempArray[(m + n) / 2] + tempArray[(m + n) / 2 - 1]) / 2.0;
    }
}